//
//  SingleCheckController.m
//  CheckDemo
//
//  Created by Allison on 2023/11/11.
//

#import "SingleCheckController.h"
#import "SingleCheckCell.h"
#import "Masonry.h"
#import "MenuModel.h"

@interface SingleCheckController ()<UITableViewDataSource,UITableViewDelegate>
@property (nonatomic, strong) UITableView *tableView;
@property (nonatomic, strong) NSArray *dataArray;
@end

@implementation SingleCheckController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    [self.view addSubview:self.tableView];
    [self.tableView mas_makeConstraints:^(MASConstraintMaker *make) {
        make.edges.mas_equalTo(self.view);
    }];
    // 模拟网络加载数据
    [self loadData];
    
}

- (void)loadData {
    NSMutableArray *modelArray = [NSMutableArray array];
    MenuModel *model1 = [[MenuModel alloc] init];
    model1.title = @"我是标题1";
    model1.isSelect = NO;
    MenuModel *model2 = [[MenuModel alloc] init];
    model2.title = @"我是标题1";
    model2.isSelect = NO;
    MenuModel *model3 = [[MenuModel alloc] init];
    model3.title = @"我是标题1";
    model3.isSelect = NO;
    [modelArray addObject:model1];
    [modelArray addObject:model2];
    [modelArray addObject:model3];
    self.dataArray = [modelArray copy];
    [self.tableView reloadData];
}

#pragma <UITableViewDelegate,UITableViewDataSource>
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return self.dataArray.count;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    SingleCheckCell *cell = [tableView dequeueReusableCellWithIdentifier:[SingleCheckCell description] forIndexPath:indexPath];
    MenuModel *model = self.dataArray[indexPath.row];
    cell.menuModel = model;
    return cell;
}

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    MenuModel *model = self.dataArray[indexPath.row];
    [self.dataArray enumerateObjectsWithOptions:NSEnumerationReverse usingBlock:^(MenuModel   *obj, NSUInteger idx, BOOL * _Nonnull stop) {
        obj.isSelect = NO;
    }];
    model.isSelect = YES;
    [tableView reloadData];
}

- (UITableView *)tableView {
    if (!_tableView) {
        UITableView *tableView = [[UITableView alloc]initWithFrame:CGRectZero style:UITableViewStylePlain];
        tableView.dataSource = self;
        tableView.delegate = self;
        tableView.rowHeight = 100;
        tableView.showsVerticalScrollIndicator = NO;
        tableView.backgroundColor = [UIColor whiteColor];
        tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
        [tableView registerClass:[SingleCheckCell class] forCellReuseIdentifier:[SingleCheckCell description]];
        _tableView = tableView;
    }
    return _tableView;
}

- (NSArray *)dataArray {
    if (!_dataArray) {
        _dataArray = [NSArray array];
    }
    return _dataArray;
}
@end
